﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Drawing;

namespace Forbidden_Island
{
    class PlayerClass
    {
        //player class fields
        private String _PlayerName;
        private int _CurrentLocation;
        private Color _PlayerColor;
        private int _PlayerSpecial;
        private Image _PlayerTokenImage;
        private Image _PlayerTranslucentImage;
        private string _specialActionText;
        private List<AdventureDeck> _cardHand;

        //constructor to create a player
        public PlayerClass(String playername, int currentlocation, Color playercolor, int playerspecial, Image playerTokenImage,
            Image playerTranslucentImage, string specialActionText)
        {
            this._PlayerName = playername;
            this._CurrentLocation = currentlocation;
            this._PlayerColor = playercolor;
            this._PlayerSpecial = playerspecial;
            this._PlayerTokenImage = playerTokenImage;
            this._PlayerTranslucentImage = playerTranslucentImage;
            this._specialActionText = specialActionText;
            _cardHand = new List<AdventureDeck>();
        }

        //getters and setters
        public string PlayerName
        {
            get { return this._PlayerName; }
            set { this._PlayerName = value; }
        }
        public int CurrentLocation
        {
            get { return this._CurrentLocation; }
            set { this._CurrentLocation = value; }
        }
        public Color PlayerColor
        {
            get { return this._PlayerColor; }
            set { this._PlayerColor = value; }
        }
        public int PlayerSpecial
        {
            get { return this._PlayerSpecial; }
            set { this._PlayerSpecial = value; }
        }
        public Image PlayerToken
        {
            get { return this._PlayerTokenImage; }
            set { this._PlayerTokenImage = PlayerToken; }
        }
        public Image PlayerTransImage
        {
            get { return this._PlayerTranslucentImage; }
            set { this._PlayerTranslucentImage = PlayerTransImage; }
        }
        public string ActionText
        {
            get { return this._specialActionText; }
            set { this._specialActionText = ActionText; }
        }
        public List<AdventureDeck> PlayerCardHand
        {
            get { return this._cardHand; }
            set { this._cardHand = PlayerCardHand; }
        }
    }
}
